public class DataInfoListController {
    public  String getName() {
        return 'DataInfoListController';    
    }
    
    
    public List<String> getAllTablesList() {
        Map<String, Schema.SObjectType> gd = Schema.getGlobalDescribe();
         
        List<Schema.Sobjecttype> sObjectList = gd.values();  
        List<String> nameList = new List<String>();
        for (Schema.Sobjecttype s: sObjectList) {
            
            
            Schema.DescribeSObjectResult r = s.getDescribe();
            
            nameList.add(r.getName() + '　　' + r.getLabel());

            System.debug('field Name=' + r.getLabel());
            //System.debug('field Name=' + r.getName() + '=' + r.getLabel() +  ' is cum:=' + r.isCustom());
            
            
        }
        nameList.sort();
        return  nameList;
    }
    
    public List<SelectOption> getOptionList() {
        Map<String, Schema.SObjectType> gd = Schema.getGlobalDescribe();
         
        List<Schema.Sobjecttype> sObjectList = gd.values();  
        List<SelectOption> nameList = new List<SelectOption>();
        for (Schema.Sobjecttype s: sObjectList) {
                Schema.DescribeSObjectResult r = s.getDescribe();
            //if (r.isCustom()) {
            nameList.add(new SelectOption(r.getName(),r.getLabel()));
            
            //}
        }

        return  nameList;
    }

    private String selectValue;
    public void setSelectValue(String objectName) {
        this.selectValue = objectName;
    }
    public String getSelectValue() {
        return this.selectValue;
    }

    static testmethod void testGetAllTablesList() {
        System.LoggingLevel level = LoggingLevel.ERROR;
        DataInfoListController control = new DataInfoListController();
        List<String> nameList = control.getAllTablesList();
        System.debug(LoggingLevel.INFO,'Object Name=' + nameList.size());
        
    }
}